// pages/profile/index.ts
Page({

  /**
   * 页面的初始数据
   */
  data: {

  },
  onLoad() {
    // 从本地获取用户信息
    this.setData({
      userInfo: wx.getStorageSync('userInfo')
    })
  },
  getUserNickName(ev) {
    // console.log(ev);
    this.updateNickName(ev.detail.value)
  },
  async updateNickName(nickName) {
    // 请求数据接口
    const {
      code
    } = await wx.http.put('/userInfo', {
      nickName
    })
    // 检测接口调用的结果
    if (code !== 10000) return wx.utils.toast('更新用户信息失败!')

    // 保存用户昵称
    this.setData({
      'userInfo.nickName': nickName
    })
  },
  getUserAvatar(ev) {
    // 用户头像地址
    // console.log(ev.detail.avatarUrl)
    this.updateUserAvatar(ev.detail.avatarUrl)
  },
  updateUserAvatar(avatarUrl) {
    // 调用接口上传图片
    wx.uploadFile({
      url: wx.http.baseURL + '/upload',
      filePath: avatarUrl,
      name: 'file',
      header: {
        Authorization: getApp().token,
      },
      formData: {
        type: 'avatar',
      },

      success: (res) => {
        // 转换 json 数据
        const data = JSON.parse(res.data)
        // 检测接口调用结果
        if (data.code !== 10000) return wx.utils.toast('更新头像失败!')

        // 保存并预览图片地址
        this.setData({
          'userInfo.avatar': data.data.url
        })
      },
    })
  },
})